package de.nenov.tutorials.designpatterns.observer;

public interface ISubject {
	
    /** 
     * Diese Methode erwartet einen Observer als Argument, 
     * d.h. den Observer, der registriert werden soll. 
     */  
    public void registerObserver(IObserver o);  
  
    /** 
     * Diese Methode erwartet einen Observer als Argument, 
     * d.h. den Observer, der entfernt werden soll. 
     */  
    public void removeObserver(IObserver o);  
      
    /** 
     * Diese Methode wird aufgerufen, um alle Observer zu benachrichtigen, 
     * wenn sich der Zustand des Subject geändert hat. 
     */  
    public void notifyObserver();
}
